home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 46 / Amiga Format CD46 (1999-10-20)(Future Publishing)(GB)[!][issue 1999-12].iso / -in_the_mag- / reader_requests / scilab / tests / lsparse.tst < prev    next >
Text File  |  1999-09-16  |  16KB  |  384 lines

  1.  
  2. mode(5)
  3. lines(0)
  4. zer=sparse([],[],[6,6]);
  5. //
  6. //
  7. //-------------------------------------------------------------
  8. //test des primitives sparse, full
  9. //-------------------------------------------------------------
  10. a=sparse([1 6;1 5;1 3;2 4;2 1;4 4;4 3;5 1;6 6],1:9,[6 6]);A=full(a);
  11. b=sparse([1 6;1 2;5 5],[-1;-1;-1],[5 6]);B=full(b);
  12. if or(full(a<>0)<>(A<>0)) then pause,end
  13. if or(full(b<>0)<>(B<>0)) then pause,end
  14. if or(full(b>0)<>(B>0)) then pause,end
  15. if or(full(b<0)<>(B<0)) then pause,end
  16. if or(full(a>100)<>(A>100)) then pause,end
  17. if sparse(B>0)<>(b>0) then pause,end
  18. if sparse(B<0)<>(b<0) then pause,end
  19. //-------------------------------------------------------------
  20. //test de la primitives spget
  21. //-------------------------------------------------------------
  22. //-----------------------------------------------
  23. // | and & tests
  24. //-----------------------------------------------
  25. // -- sparse sparse
  26. a=sparse([1 6;1 5;1 3;2 4;2 1;4 4;4 3;5 1;6 6],1:9,[6 6]);a=a<>0;A=full(a);
  27. b=sparse([1 6;1 2;5 5],[-1;-1;-1],[6 6]);b=b<>0;B=full(b);
  28. if (a|b)<>(A|B) then pause,end
  29. if (a&b)<>(A&B) then pause,end
  30. a=sparse([1 6;1 5;1 3;2 4;2 1;4 4;4 3;5 1;6 6],1:9,[6 6]);a=a>100;A=full(a);
  31. if (a|b)<>(A|B) then pause,end
  32. if (a&b)<>(A&B) then pause,end
  33. a=sparse([1 6;1 5;1 3;2 4;2 1;4 4;4 3;5 1;6 6],1:9,[6 6]);a=a<>0;A=full(a);
  34. b=sparse([1 6;1 2;5 5],[-1;-1;-1],[6 6]);b=b>0;B=full(b);
  35. if (a|b)<>(A|B) then pause,end
  36. if (a&b)<>(A&B) then pause,end
  37. b=sparse([1 6;1 2;5 5],[-1;-1;-1],[6 6]);b=b>0;B=full(b);
  38. a=sparse([1 6;1 5;1 3;2 4;2 1;4 4;4 3;5 1;6 6],1:9,[6 6]);a=a>100;A=full(a);
  39. if (a|b)<>(A|B) then pause,end
  40. if (a&b)<>(A&B) then pause,end
  41. // -- sparse full
  42. a=sparse([1 6;1 5;1 3;2 4;2 1;4 4;4 3;5 1;6 6],1:9,[6 6]);a=a<>0;A=full(a);
  43. b=sparse([1 6;1 2;5 5],[-1;-1;-1],[6 6]);b=b<>0;B=full(b);
  44. if (a|B)<>(A|B) then pause,end
  45. if (a&B)<>(A&B) then pause,end
  46. a=sparse([1 6;1 5;1 3;2 4;2 1;4 4;4 3;5 1;6 6],1:9,[6 6]);a=a>100;A=full(a);
  47. if (a|B)<>(A|B) then pause,end
  48. if (a&B)<>(A&B) then pause,end
  49. a=sparse([1 6;1 5;1 3;2 4;2 1;4 4;4 3;5 1;6 6],1:9,[6 6]);a=a<>0;A=full(a);
  50. b=sparse([1 6;1 2;5 5],[-1;-1;-1],[6 6]);b=b>0;B=full(b);
  51. if (a|B)<>(A|B) then pause,end
  52. if (a&B)<>(A&B) then pause,end
  53. b=sparse([1 6;1 2;5 5],[-1;-1;-1],[6 6]);b=b>0;B=full(b);
  54. a=sparse([1 6;1 5;1 3;2 4;2 1;4 4;4 3;5 1;6 6],1:9,[6 6]);a=a>100;A=full(a);
  55. if (a|B)<>(A|B) then pause,end
  56. if (a&B)<>(A&B) then pause,end
  57. // -- full sparse
  58. a=sparse([1 6;1 5;1 3;2 4;2 1;4 4;4 3;5 1;6 6],1:9,[6 6]);a=a<>0;A=full(a);
  59. b=sparse([1 6;1 2;5 5],[-1;-1;-1],[6 6]);b=b<>0;B=full(b);
  60. if (A|b)<>(A|B) then pause,end
  61. if (A&b)<>(A&B) then pause,end
  62. a=sparse([1 6;1 5;1 3;2 4;2 1;4 4;4 3;5 1;6 6],1:9,[6 6]);a=a>100;A=full(a);
  63. if (A|b)<>(A|B) then pause,end
  64. if (A&b)<>(A&B) then pause,end
  65. a=sparse([1 6;1 5;1 3;2 4;2 1;4 4;4 3;5 1;6 6],1:9,[6 6]);a=a<>0;A=full(a);
  66. b=sparse([1 6;1 2;5 5],[-1;-1;-1],[6 6]);b=b>0;B=full(b);
  67. if (A|b)<>(A|B) then pause,end
  68. if (A&b)<>(A&B) then pause,end
  69. b=sparse([1 6;1 2;5 5],[-1;-1;-1],[6 6]);b=b>0;B=full(b);
  70. a=sparse([1 6;1 5;1 3;2 4;2 1;4 4;4 3;5 1;6 6],1:9,[6 6]);a=a>100;A=full(a);
  71. if (A|b)<>(A|B) then pause,end
  72. if (A&b)<>(A&B) then pause,end
  73. // ----------------------------------------------------------
  74. // test de la transposition
  75. //-----------------------------------------------------------
  76. a=sparse([1 6;1 5;1 3;2 4;2 1;4 4;4 3;5 1;6 6],1:9,[6 6]);a=a<>0;A=full(a);
  77. b=sparse([1 6;1 2;5 5],[-1;-1;-1],[6 6]);b=b<>0;B=full(b);
  78. if or(full(a')<>full(a)') then pause,end
  79. if or(full(b')<>full(b)') then pause,end
  80. b=sparse([1 6;1 2;5 5],[-1;-1;-1],[6 6]);b=b>0;B=full(b);
  81. a=sparse([1 6;1 5;1 3;2 4;2 1;4 4;4 3;5 1;6 6],1:9,[6 6]);a=a>100;A=full(a);
  82. if or(full(a')<>full(a)') then pause,end
  83. if or(full(b')<>full(b)') then pause,end
  84. // ----------------------------------------------------------
  85. // test des concatenation
  86. //-----------------------------------------------------------
  87. // sparse sparse
  88. a=sparse([1 6;1 5;1 3;2 4;2 1;4 4;4 3;5 1;6 6],1:9,[6 6]);a=a<>0;A=full(a);
  89. b=sparse([1 6;1 2;5 5],[-1;-1;-1],[6 6]);b=b<>0;B=full(b);
  90. if or(full([a])<>A) then pause,end
  91. if or(full([a b])<>[A B]) then pause,end
  92. if or(full([a;b])<>[A;B]) then pause,end
  93. if or(full([a []])<>A) then pause,end
  94. if or(full([a;[]])<>A) then pause,end
  95. // sparse full
  96. a=sparse([1 6;1 5;1 3;2 4;2 1;4 4;4 3;5 1;6 6],1:9,[6 6]);a=a<>0;A=full(a);
  97. b=sparse([1 6;1 2;5 5],[-1;-1;-1],[6 6]);b=b<>0;B=full(b);
  98. if or(full([a B])<>[A B]) then pause,end
  99. if or(full([a;B])<>[A;B]) then pause,end
  100. b=sparse([1 6;1 2;5 5],[-1;-1;-1],[6 6]);b=b>0;B=full(b);
  101. a=sparse([1 6;1 5;1 3;2 4;2 1;4 4;4 3;5 1;6 6],1:9,[6 6]);a=a>100;A=full(a);
  102. if or(full([a B])<>[A B]) then pause,end
  103. if or(full([a;B])<>[A;B]) then pause,end
  104. // full sparse
  105. if or(full([A b])<>[A B]) then pause,end
  106. if or(full([A;b])<>[A;B]) then pause,end
  107. b=sparse([1 6;1 2;5 5],[-1;-1;-1],[6 6]);b=b>0;B=full(b);
  108. a=sparse([1 6;1 5;1 3;2 4;2 1;4 4;4 3;5 1;6 6],1:9,[6 6]);a=a>100;A=full(a);
  109. if or(full([A b])<>[A B]) then pause,end
  110. if or(full([B;b])<>[A;B]) then pause,end
  111. // ----------------------------------------------------------
  112. // test des extractions
  113. //-----------------------------------------------------------
  114. a=sparse([1 6;1 5;1 3;2 4;2 1;4 4;4 3;5 1;6 6],1:9,[6 6]);a=a<>0;af=full(a);
  115. if or(full(a(1,3))<>af(1,3)) then pause,end
  116. if or(full(a(1,4))<>af(1,4)) then pause,end
  117. if or(full(a(1,:))<>af(1,:)) then pause,end
  118. v=sparse([2 1;3 1;4 1;6 1],[10;11;12;13],[6,1]);v=v<>0;vf=full(v);
  119. if or(full(v(:))<>vf(:)) then pause,end
  120. if or(full(v(3:4))<>vf(3:4)) then pause,end
  121. if or(full(v([1 5]))<>vf([1 5])) then pause,end
  122. if or(full(v([4 3]))<>vf([4 3])) then pause,end
  123. if or(full(v([4 4]))<>vf([4 4])) then pause,end
  124. if or(full(v([1 1]))<>vf([1 1])) then pause,end
  125. v=v';vf=vf';
  126. if or(full(v(:))<>vf(:)) then pause,end
  127. if or(full(v(3:4))<>vf(3:4)) then pause,end
  128. if or(full(v([1 5]))<>vf([1 5])) then pause,end
  129. if or(full(v([4 3]))<>vf([4 3])) then pause,end
  130. if or(full(v([4 4]))<>vf([4 4])) then pause,end
  131. if or(full(v([1 1]))<>vf([1 1])) then pause,end
  132. // full line insertion
  133. //----------------------
  134. a=sparse([1 6;1 5;1 3;2 4;2 1;4 4;4 3;5 1;6 6],1:9,[6 6]);a=a<>0;af=full(a);
  135. vt=sparse([1 2;1 3;1 4;1 6],[10;11;12;13],[1,6]);vt=vt<>0;
  136. a1=a;a1(1,:)=vt;A=full(a);Vt=full(vt);A(1,:)=Vt;
  137. if or(full(a1)<>A) then pause,end
  138. a1=a;a1(3,:)=vt;A=full(a);Vt=full(vt);A(3,:)=Vt;
  139. if or(full(a1)<>A) then pause,end
  140. a1=a;a1(1,:)=vt;A=full(a);Vt=full(vt);A(1,:)=Vt;
  141. if or(full(a1)<>A) then pause,end
  142. a1=a;a1(3,:)=vt;A=full(a);Vt=full(vt);A(3,:)=Vt;
  143. if or(full(a1)<>A) then pause,end
  144. a1=a;a1(7,:)=vt;A=full(a);Vt=full(vt);A(7,:)=Vt;
  145. if or(full(a1)<>A) then pause,end
  146. a1=a;a1(8,:)=vt;A=full(a);Vt=full(vt);A(8,:)=Vt;
  147. if or(full(a1)<>A) then pause,end
  148. b=sparse([1 1;1 3;1 6;2 1;2 2;2 4],10:15,[2,6])<>0;
  149. a1=a;a1([1 3],:)=b;A=full(a);B=full(b);A([1 3],:)=B;
  150. if or(full(a1)<>A) then pause,end
  151. a1=a;a1([3 1],:)=b;A=full(a);B=full(b);A([3 1],:)=B;
  152. if or(full(a1)<>A) then pause,end
  153. b=sparse([1 1;1 3;1 6;2 1;2 2;2 4;3 3;3 5],10:17,[3,6])<>0;
  154. a1=a;a1([1 3 1],:)=b;A=full(a);B=full(b);A([1 3 1],:)=B;
  155. if or(full(a1)<>A) then pause,end
  156. //  insert zero vector
  157. vt=sparse([],[],[1,6])<>0;
  158. a1=a;a1(1,:)=vt;A=full(a);Vt=full(vt);A(1,:)=Vt;
  159. if or(full(a1)<>A) then pause,end
  160. a1=a;a1(3,:)=vt;A=full(a);Vt=full(vt);A(3,:)=Vt;
  161. if or(full(a1)<>A) then pause,end
  162. a1=a;a1(1,:)=vt;A=full(a);Vt=full(vt);A(1,:)=Vt;
  163. if or(full(a1)<>A) then pause,end
  164. a1=a;a1(3,:)=vt;A=full(a);Vt=full(vt);A(3,:)=Vt;
  165. if or(full(a1)<>A) then pause,end
  166. a1=a;a1(7,:)=vt;A=full(a);Vt=full(vt);A(7,:)=Vt;
  167. if or(full(a1)<>A) then pause,end
  168. a1=a;a1(8,:)=vt;A=full(a);Vt=full(vt);A(8,:)=Vt;
  169. if or(full(a1)<>A) then pause,end
  170. b=sparse([1 1;1 3;1 6;2 1;2 2;2 4],10:15,[2,6]);b=b<>0;
  171. a1=a;a1([1 3],:)=b;A=full(a);B=full(b);A([1 3],:)=B;
  172. if or(full(a1)<>A) then pause,end
  173. a1=a;a1([3 1],:)=b;A=full(a);B=full(b);A([3 1],:)=B;
  174. if or(full(a1)<>A) then pause,end
  175. b=sparse([1 1;1 3;1 6;2 1;2 2;2 4;3 3;3 5],10:17,[3,6]);b=b<>0;
  176. a1=a;a1([1 3 1],:)=b;A=full(a);B=full(b);A([1 3 1],:)=B;
  177. if or(full(a1)<>A) then pause,end
  178. // full column insertion
  179. //----------------------
  180. a=sparse([1 6;1 5;1 3;2 4;2 1;4 4;4 3;5 1;6 6],1:9,[6 6]);a=a<>0;
  181. v=sparse([2 1;3 1;4 1;6 1],[10;11;12;13],[6,1]);v=v<>0;
  182. a1=a;a1(:,1)=v;A=full(a);V=full(v);A(:,1)=V;
  183. if or(full(a1)<>A) then pause,end
  184. a1=a;a1(:,2)=v;A=full(a);V=full(v);A(:,2)=V;
  185. if or(full(a1)<>A) then pause,end
  186. a1=a;a1(:,1)=v;A=full(a);V=full(v);A(:,1)=V;
  187. if or(full(a1)<>A) then pause,end
  188. a1=a;a1(:,2)=v;A=full(a);V=full(v);A(:,2)=V;
  189. if or(full(a1)<>A) then pause,end
  190. a1=a;a1(:,3)=v;A=full(a);V=full(v);A(:,3)=V;
  191. if or(full(a1)<>A) then pause,end
  192. //
  193. a1=a;a1(:,7)=v;A=full(a);V=full(v);A(:,7)=V;
  194. if or(full(a1)<>A) then pause,end
  195. a1=a;a1(:,8)=v;A=full(a);V=full(v);A(:,8)=V;
  196. if or(full(a1)<>A) then pause,end
  197. b=sparse([1 2;2 1;3 1;3 2;4 1;6 2],10:15,[6,2]);b=b<>0;
  198. a1=a;a1(:,[1 3])=b;A=full(a);B=full(b);A(:,[1 3])=B;
  199. if or(full(a1)<>A) then pause,end
  200. a1=a;a1(:,[3 1])=b;A=full(a);B=full(b);A(:,[3 1])=B;
  201. if or(full(a1)<>A) then pause,end
  202. b=sparse([1 2;2 1;2 3;3 1;3 2;4 1;5 3;6 2],10:17,[6,3]);b=b<>0;
  203. a1=a;a1(:,[1 3 1])=b;A=full(a);B=full(b);A(:,[1 3 1])=B;
  204. if or(full(a1)<>A) then pause,end
  205. // row column insertion
  206. a=sparse([1 6;1 5;1 3;2 4;2 1;4 4;4 3;5 1;6 6],1:9,[6 6]);a=a<>0;
  207. b=sparse([1 2;1 3;3 3],-(1:3),[3,3]);b=b<>0;
  208. a1=a;a1(1,1)=sparse(%t);A=full(a);A(1,1)=%t;
  209. if or(full(a1)<>A) then pause,end
  210. a1=a;a1(1,6)=sparse(%t);A=full(a);A(1,6)=%t;
  211. if or(full(a1)<>A) then pause,end
  212. a1=a;a1(1,8)=sparse(%t);A=full(a);A(1,8)=%t;
  213. if or(full(a1)<>A) then pause,end
  214. a1=a;a1(1:3,1:3)=b;A=full(a);A(1:3,1:3)=full(b);
  215. if or(full(a1)<>A) then pause,end
  216. a1=a;a1(1:3,6:8)=b;A=full(a);A(1:3,6:8)=full(b);
  217. if or(full(a1)<>A) then pause,end
  218. a1=a;a1(6:8,1:3)=b;A=full(a);A(6:8,1:3)=full(b);
  219. if or(full(a1)<>A) then pause,end
  220. a1=a;a1([3 2 1],1:3)=b;A=full(a);A([3 2 1],1:3)=full(b);
  221. if or(full(a1)<>A) then pause,end
  222. a1=a;a1([1 2 1],1:3)=b;A=full(a);A([1 2 1],1:3)=full(b);
  223. if or(full(a1)<>A) then pause,end
  224. a1=a;a1([3 2 1],[3 2 1])=b;A=full(a);A([3 2 1],[3 2 1])=full(b);
  225. if or(full(a1)<>A) then pause,end
  226. a1=a;a1([1 2 1],[3 2 1])=b;A=full(a);A([1 2 1],[3 2 1])=full(b);
  227. if or(full(a1)<>A) then pause,end
  228. a1=a;a1([1 2 1],[1 2 1])=b;A=full(a);A([1 2 1],[1 2 1])=full(b);
  229. if or(full(a1)<>A) then pause,end
  230. //sparse full
  231. a=sparse([1 6;1 5;1 3;2 4;2 1;4 4;4 3;5 1;6 6],1:9,[6 6]);a=a<>0;
  232. vt=[%t %f %t %t %t %t];
  233. // full line insertion
  234. //----------------------
  235. a1=a;a1(1,:)=vt;A=full(a);A(1,:)=vt;
  236. if or(full(a1)<>A) then pause,end
  237. a1=a;a1(3,:)=vt;A=full(a);A(3,:)=vt;
  238. if or(full(a1)<>A) then pause,end
  239. a1=a;a1(1,:)=vt;A=full(a);A(1,:)=vt;
  240. if or(full(a1)<>A) then pause,end
  241. a1=a;a1(3,:)=vt;A=full(a);A(3,:)=vt;
  242. if or(full(a1)<>A) then pause,end
  243. a1=a;a1(7,:)=vt;A=full(a);A(7,:)=vt;
  244. if or(full(a1)<>A) then pause,end
  245. a1=a;a1(8,:)=vt;A=full(a);A(8,:)=vt;
  246. if or(full(a1)<>A) then pause,end
  247. b=[%t %f %t %t %t %t;%f %f %t %t %f %t];
  248. a1=a;a1([1 3],:)=b;A=full(a);A([1 3],:)=b;
  249. if or(full(a1)<>A) then pause,end
  250. a1=a;a1([3 1],:)=b;A=full(a);A([3 1],:)=b;
  251. if or(full(a1)<>A) then pause,end
  252. b=[%t %f %t %t %t %t;%f %f %t %t %f %t;%t %f %t %f %t %t];
  253. a1=a;a1([1 3 1],:)=b;A=full(a);A([1 3 1],:)=b;
  254. if or(full(a1)<>A) then pause,end
  255. // full column insertion
  256. //----------------------
  257. a=sparse([1 6;1 5;1 3;2 4;2 1;4 4;4 3;5 1;6 6],1:9,[6 6]);a=a<>0;
  258. v=[%t %f %t %t %t %t]';
  259. a1=a;a1(:,1)=v;A=full(a);A(:,1)=v;
  260. if or(full(a1)<>A) then pause,end
  261. a1=a;a1(:,2)=v;A=full(a);A(:,2)=v;
  262. if or(full(a1)<>A) then pause,end
  263. a1=a;a1(:,1)=v;A=full(a);A(:,1)=v;
  264. if or(full(a1)<>A) then pause,end
  265. a1=a;a1(:,2)=v;A=full(a);A(:,2)=v;
  266. if or(full(a1)<>A) then pause,end
  267. a1=a;a1(:,3)=v;A=full(a);A(:,3)=v;
  268. if or(full(a1)<>A) then pause,end
  269. //
  270. a1=a;a1(:,7)=v;A=full(a);A(:,7)=v;
  271. if or(full(a1)<>A) then pause,end
  272. a1=a;a1(:,8)=v;A=full(a);A(:,8)=v;
  273. if or(full(a1)<>A) then pause,end
  274. b=[%t %f %t %t %t %t;%f %f %t %t %f %t]';
  275. a1=a;a1(:,[1 3])=b;A=full(a);A(:,[1 3])=b;
  276. if or(full(a1)<>A) then pause,end
  277. a1=a;a1(:,[3 1])=b;A=full(a);A(:,[3 1])=b;
  278. if or(full(a1)<>A) then pause,end
  279. b=[%t %f %t %t %t %t;%f %f %t %t %f %t;%f %t %t %t %t %f]';
  280. a1=a;a1(:,[1 3 1])=b;A=full(a);A(:,[1 3 1])=b;
  281. if or(full(a1)<>A) then pause,end
  282. // row column insertion
  283. a=sparse([1 6;1 5;1 3;2 4;2 1;4 4;4 3;5 1;6 6],1:9,[6 6]);a=a<>0;
  284. b=[%t %t %f;%f %t %f;%t %t %t];
  285. a1=a;a1(1,1)=%t;A=full(a);A(1,1)=%t;
  286. if or(full(a1)<>A) then pause,end
  287. a1=a;a1(1,6)=%t;A=full(a);A(1,6)=%t;
  288. if or(full(a1)<>A) then pause,end
  289. a1=a;a1(1,8)=%t;A=full(a);A(1,8)=%t;
  290. if or(full(a1)<>A) then pause,end
  291. a1=a;a1(1:3,1:3)=b;A=full(a);A(1:3,1:3)=b;
  292. if or(full(a1)<>A) then pause,end
  293. a1=a;a1(1:3,6:8)=b;A=full(a);A(1:3,6:8)=b;
  294. if or(full(a1)<>A) then pause,end
  295. a1=a;a1(6:8,1:3)=b;A=full(a);A(6:8,1:3)=b;
  296. if or(full(a1)<>A) then pause,end
  297. a1=a;a1([3 2 1],1:3)=b;A=full(a);A([3 2 1],1:3)=b;
  298. if or(full(a1)<>A) then pause,end
  299. a1=a;a1([1 2 1],1:3)=b;A=full(a);A([1 2 1],1:3)=b;
  300. if or(full(a1)<>A) then pause,end
  301. a1=a;a1([3 2 1],[3 2 1])=b;A=full(a);A([3 2 1],[3 2 1])=b;
  302. if or(full(a1)<>A) then pause,end
  303. a1=a;a1([1 2 1],[3 2 1])=b;A=full(a);A([1 2 1],[3 2 1])=b;
  304. if or(full(a1)<>A) then pause,end
  305. a1=a;a1([1 2 1],[1 2 1])=b;A=full(a);A([1 2 1],[1 2 1])=b;
  306. if or(full(a1)<>A) then pause,end
  307. // vector insertion
  308. v=sparse([1 1;3 1;6 1],[10 11 12],[6 1]);v=v<>0;
  309. v1=v;v1(1)=%f;V=full(v);V(1)=%f;
  310. if or(full(v1)<>V) then pause,end
  311. v1=v;v1(2)=%t;V=full(v);V(2)=%t;
  312. if or(full(v1)<>V) then pause,end
  313. v1=v;v1(8)=%f;V=full(v);V(8)=%f;
  314. if or(full(v1)<>V) then pause,end
  315. v1=v;v1([1 2 8])=[%t;%t;%f];V=full(v);V([1 2 8])=[%t;%t;%f];
  316. if or(full(v1)<>V) then pause,end
  317. v1=v;v1(:)=[];
  318. if or(full(v1)<>[]) then pause,end
  319. v1=v;v1(1)=sparse(%f);V=full(v);V(1)=%f;
  320. if or(full(v1)<>V) then pause,end
  321. v1=v;v1(2)=sparse(%f);V=full(v);V(2)=%f;
  322. if or(full(v1)<>V) then pause,end
  323. v1=v;v1(8)=sparse(%f);V=full(v);V(8)=%f;
  324. if or(full(v1)<>V) then pause,end
  325. v1=v;v1([1 2 8])=sparse([%f;%t;%f]);V=full(v);V([1 2 8])=[%f;%t;%f];
  326. if or(full(v1)<>V) then pause,end
  327. v1=v;v1([1 2 1])=sparse([%f;%f;%f]);V=full(v);V([1 2 1])=[%f;%f;%f];
  328. if or(full(v1)<>V) then pause,end
  329. v1=v;v1(:)=[];
  330. if or(full(v1)<>[]) then pause,end
  331. v1=v;v1(:)=(sparse([2 1],44,[6 1])<>0);V=full(v);V(:)=[%f;%t;%f;%f;%f;%f];
  332. if or(full(v1)<>V) then pause,end
  333. v=v';
  334. v1=v;v1(1)=%f;V=full(v);V(1)=%f;
  335. if or(full(v1)<>V) then pause,end
  336. v1=v;v1(2)=%f;V=full(v);V(2)=%f;
  337. if or(full(v1)<>V) then pause,end
  338. v1=v;v1(8)=%f;V=full(v);V(8)=%f;
  339. if or(full(v1)<>V) then pause,end
  340. v1=v;v1([1 2 8])=[%t %f %f];V=full(v);V([1 2 8])=[%t %f %f];
  341. if or(full(v1)<>V) then pause,end
  342. v1=v;v1(1)=sparse(%f);V=full(v);V(1)=%f;
  343. if or(full(v1)<>V) then pause,end
  344. v1=v;v1(2)=sparse(%f);V=full(v);V(2)=%f;
  345. if or(full(v1)<>V) then pause,end
  346. v1=v;v1(8)=sparse(%f);V=full(v);V(8)=%f;
  347. if or(full(v1)<>V) then pause,end
  348. v1=v;v1([1 2 8])=sparse([%f %t %f]);V=full(v);V([1 2 8])=[%f %t %f];
  349. if or(full(v1)<>V) then pause,end
  350. v1=v;v1([1 2 1])=sparse([%f %f %f]);V=full(v);V([1 2 1])=[%f %f %f];
  351. if or(full(v1)<>V) then pause,end
  352. v1=v;v1(:)=(sparse([1 2],44,[1,6]))<>0;V=full(v);V(:)=[%f %t %f %f %f %f];
  353. if or(full(v1)<>V) then pause,end
  354. v1=v;v1(1)=[];V=full(v);V(1)=[];
  355. if or(full(v1)<>V) then pause,end
  356. //test des comparaisons
  357. a=sparse([1 6;1 5;1 3;2 4;2 1;4 4;4 3;5 1;6 6],1:9,[6 6])<>0;
  358. b=sparse([1 6;1 2;6 5],[10;-1;-1],[6 6])<>0;;
  359. if full(a==a)<>full(a)==full(a) then pause,end
  360. if full(a<>a)<>(full(a)<>full(a)) then pause,end
  361. if full(a==full(a))<>full(a)==full(a) then pause,end
  362. if full(a<>full(a))<>(full(a)<>full(a)) then pause,end
  363. if full(full(a)==a)<>full(a)==full(a) then pause,end
  364. if full(full(a)<>a)<>(full(a)<>full(a)) then pause,end
  365. a=sparse([1 1;3 1;6 1],[10 11 12],[6 1])<>0;
  366. if full(a==a)<>full(a)==full(a) then pause,end
  367. if full(a<>a)<>(full(a)<>full(a)) then pause,end
  368. if full(a==full(a))<>full(a)==full(a) then pause,end
  369. if full(a<>full(a))<>(full(a)<>full(a)) then pause,end
  370. if full(full(a)==a)<>full(a)==full(a) then pause,end
  371. if full(full(a)<>a)<>(full(a)<>full(a)) then pause,end
  372. a=a';
  373. if full(a==a)<>full(a)==full(a) then pause,end
  374. if full(a<>a)<>(full(a)<>full(a)) then pause,end
  375. if full(a==full(a))<>full(a)==full(a) then pause,end
  376. if full(a<>full(a))<>(full(a)<>full(a)) then pause,end
  377. if full(full(a)==a)<>full(a)==full(a) then pause,end
  378. if full(full(a)<>a)<>(full(a)<>full(a)) then pause,end
  379. a=sparse([1 6;1 5;1 3;2 4;2 1;4 4;4 3;5 1;6 6],1:9,[6 6])<>0;
  380. b=sparse([1 6;1 2;5 5],[10;-1;-1],[5 6])<>0;
  381. if a==b<>%f then pause,end
  382. if a<>b<>%t then pause,end
  383.  
  384.